package main

import "fmt"
//import "unicode/utf8"

func main()  {
	// 声明一个数组
	var array = [10]byte{'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'}
	// 声明两个slice
	var aSlice []byte
	dst := make([]byte, len(array))

	// 演示一些简便操作
	aSlice = array[:3] // 等价于aSlice = array[0:3] aSlice包含元素: a,b,c
	fmt.Printf("aSlice = %c\n", aSlice)
	aSlice = array[5:] // 等价于aSlice = array[5:10] aSlice包含元素: f,g,h,i,j
	fmt.Printf("aSlice = %c\n", aSlice)
	aSlice = array[:]  // 等价于aSlice = array[0:10] 这样aSlice包含了全部的元素
	fmt.Printf("aSlice = %c\n", aSlice)
	len := copy(dst, aSlice)
	cap_len := cap(dst)
	fmt.Printf("cap=%d len=%d dst = %c\n", cap_len, len, dst)
}